package com.common.annotation;

import com.common.mysql.generator.AbstractGenerator;
import com.common.mysql.generator.UUIDGenerator;

import java.lang.annotation.*;

/**
 * 数据库表相关
 */
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface Table {
    /**
     * 表名
     *
     * @return
     */
    String value();


    /**
     * 生成id方法
     *
     * @return
     */
    Class<? extends AbstractGenerator> idGenerator() default UUIDGenerator.class;

    /**
     * 是否生成
     *
     * @return
     */
    boolean generatorFlag() default true;

    /**
     * 排序方式
     * @return
     */
    String orderBy() default "";


    /**
     * 是否逻辑删除
     * @return
     */
    boolean delFlag() default true;
}
